/* rulenot.vala
 *
 * Copyright (C) 2008  Frederik 'playya' Sdun
 *
 * This program is free software: you can redistribute it and/or modify
 * it under the terms of the GNU General Public License as published by
 * the Free Software Foundation, either version 2 of the License, or
 * (at your option) any later version.
 *
 * This program is distributed in the hope that it will be useful,
 * but WITHOUT ANY WARRANTY; without even the implied warranty of
 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
 * GNU General Public License for more details.
 *
 * You should have received a copy of the GNU General Public License
 * along with this program.  If not, see <http://www.gnu.org/licenses/>.
 *
 * Author:
 *     Frederik 'playya' Sdun <Frederik.Sdun@gmail.com>
 */
using GLib;
using Rob;
namespace Rob
{
    namespace Rules
    {
        public class RuleNot: RuleComplex
        {
            //protected Rob.Rules.IRule rule;
            //protected List<Rob.Actions.IAction> actions;

            public override void update( Rob.Observable o)
            {
                GLib.debug("Not: %s\n", o.fulfilled.to_string() );
                this.fulfilled = ! o.fulfilled ;
                if ( this.fulfilled == true )
                {
                    foreach( Rob.Actions.IAction a in actions )
                    {
                        a.run();
                    }
                }
            }

            public override bool load( GLib.KeyFile kf, string name)
            {
                GLib.debug("Loading Not %s\n", name );


                return true;
            }
            public override bool save(GLib.KeyFile kf)
            {
                return false;
            }
            /*public static GLib.Type get_type(  )
            {
                return typeof( RuleNot );
            }
            */
        }
    }
}
